package com.tjetc.service;

import com.github.pagehelper.PageInfo;
import com.tjetc.entity.Dish;
import org.omg.PortableInterceptor.DISCARDING;

import java.util.List;

/***
 * 菜品部分接口
 */

public interface DishService {
    int insert(Dish dish);
    int deleteById(Integer id);
    Dish selectById(Integer id);

    /**
     * 用下面四个字段查询菜品，使用动态sql实现，可以传入空值
     * @param dishName 菜品名称
     * @param merchantName 商家名称
     * @param upPrice 上限价格
     * @param downPrice 下限价格
     * @param pageNum 页数
     * @param pageSize 页的大小
     * @return 返回页面信息
     */
    PageInfo select2Page(String dishName,String merchantName,Integer upPrice,
                         Integer downPrice, int pageNum, int pageSize);

    //批量删除菜品
    Integer deleteDishes(List<Integer> dishes);

    //根据菜系id查询菜品
    List<Dish> selectByCategoryId(int id,int merchantId);

    //查询所有菜品
    List<Dish> selectAll();

    //根据商家id查询菜品
    List<Dish> selectByMerchantId(int id);

    PageInfo selectPageByMerchantId(int id,int pageNum,int pageSize);
    //根据菜品名字查询
    Dish selectByName(String name);
    //更新菜品信息
    Integer update(Dish dish);

    Integer passDishes(List<Integer> ids);
    //批量查询菜品信息
    List<Dish> selectByList(List<Integer> list);

    PageInfo selectDetailPageByMerchantId(int id,int pageNum,int pageSize);

    //查询商家的热销菜品
    List<Dish> selectHot(int merchantId);

    List<Dish> getMerchantExamine(Integer id);
}
